function a() {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      console.log('aaa');
      // resolve('yes')
      reject('no')
    }, 1000)
  })
}
function b() {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      console.log('bbb');
      resolve('ok')
    }, 500)
  })
}

function c() {
  console.log('ccc');
}

// a()
// .then(
//   (res) => {
//     return 'ok'
//   },
//   (res) => {
//     return 'ok'
//   }
// )
// .then((res2) => {
//   console.log('then2', res2);
// })


Promise.race([a(), b()]).then(
  res => {
    console.log(res);
    c()
  },
  err => {
    console.log(err);
  }
)
